package org.example.maven.service;

import org.example.maven.pojo.position.AddPosition;
import org.example.maven.pojo.position.PositionListTable;
import org.example.maven.pojo.position.SearchPosition;

import java.util.List;
import java.util.Map;

public interface PositionService {
    List<PositionListTable> getAllPositionList(Integer pageNum,Integer pageSize);

    //添加岗位
    void addPosition(AddPosition addPosition);

    //获取特定情况下的total
    Integer getPositionCount(SearchPosition searchPosition);

    //获取特定的岗位信息
    List<PositionListTable> getSpeciePosition(SearchPosition searchPosition,Integer pageNum,Integer pageSize);

    //逻辑删除岗位
    void deletePosition(String []id);

    //获取编辑岗位的信息
    AddPosition getEditPosition(Integer id);

    //更新岗位信息
    void updatePosition(AddPosition addPosition);

    //判断添加的岗位是否存在
    AddPosition getPositionLive(String name);

    //判断添加的藏品在逻辑删除里是否存在
    AddPosition getPositionIsDeletedLive(String name);

    //更新逻辑删除的岗位
    void updatePositionIsDeleted(AddPosition addPosition);

    //根据部门id加载对应的岗位选项
    List<Map<String,String>> getPositionByDepartmentId(Integer id);

}
